/*
 ========================================================================
 Name        : StopWatchAppUi.h
 Author      : Vasily Nemkov
 Copyright   : 
 Description : 
 ========================================================================
 */
#ifndef STOPWATCH_APPUI_H_INCLUDED
#define STOPWATCH_APPUI_H_INCLUDED

#include <aknviewappui.h>

class CStopWatchView;

/**
 * @class    CStopWatchAppUi StopWatchAppUi.h
 * @brief The AppUi class handles application-wide aspects of the user interface, including
 *        view management and the default menu, control pane, and status pane.
 */
class CStopWatchAppUi : public CAknViewAppUi
{
public:
  // constructor and destructor
  CStopWatchAppUi();
  virtual ~CStopWatchAppUi();
  void ConstructL();

public:
  // from CCoeAppUi
  TKeyResponse HandleKeyEventL(const TKeyEvent& aKeyEvent, TEventCode aType);

  // from CEikAppUi
  void HandleCommandL(TInt aCommand);
  void HandleResourceChangeL(TInt aType);

  // from CAknAppUi
  void HandleViewDeactivation(
      const TVwsViewId& aViewIdToBeDeactivated,
      const TVwsViewId& aNewlyActivatedViewId);

private:
  void InitializeViewsL();
  CStopWatchView* iStopWatchView;
};

#endif // STOPWATCH_APPUI_H_INCLUDED            
